#include "HexABin.h"
#include <sstream>

// Pasa un string que contiene bytes codificados en formato HEX
// a formato binario, y lo devuelve como un vector de bytes en 'datos'.
void hexABin(std::string &hexString, uint8_t *datos) {

	std::stringstream aux; char byteBuff[3]; int i;
	aux << hexString;

	aux.read(&byteBuff[0], 2);
	// Obtiene uno por uno los pares de caracteres HEX que representan
	// a cada byte y los convierte a binario.
	for (int j = 0; aux.good() ; ++j) {
		byteBuff[2] = '\0';
		std::stringstream aux2(byteBuff);
		aux2 >> std::hex >> i;
		datos[j]=((uint8_t)i);
		aux.read(&byteBuff[0], 2);
	}
}
